本研究聚焦于在传播模型未知的前提下进行社交网络中的多传播源检测问题，本章讲首先形式化定义研究问题，并对近年来这一领域进行了文献综述。进一步地，本章将对本文研究所涉及的传播模型和深度学习基础模型等背景知识进行简要介绍，为后续章节的多源点检测深度学习框架设计和组件实现做基础知识的铺垫。

\section{研究问题描述}\label{sec:problem-description}

本节对“基于标签传播的多源点检测问题”做公式化描述，设定研究对象为静态的图结构（图的节点与节点间的边不随时间推移而变化）中聚焦单一标签$l$的传播场景。

对于社交网络对应的图数据$G=(V,E)$, 记其节点数量$|V|=N$。
可对其进行多次观察，观察将得到节点标签快照向量$y_m^l\in \mathbb{R}^N$，这一一维向量的每一个维度的值代表此快照下对应图节点的标签值。$y_{mi}^l\in \{0,1\}$，0代表节点未被感染，1代表节点已经被感染。取其中符合要求的M组，得到长度为M的节点标签序列$Y^l\in \mathbb{R}^{M\times N}$。

对于这样的输入，一些工作选择直接输出针对每个节点进行源点类别判断的one-hot向量$J^l\in \mathbb{R}^{N\times 2}$来作为节点是否为标签传播源点的判断，但这种方法仅能针对固定比率（ratio）的多源点检测任务，对于源点数量，观测比率跨度不同的节点标签序列，模型的泛用性都有一定局限性。
因此本文描述的多源点检测任务应当对上述每一个标签向量序列$Y^l$输出一个节点评分向量$G^l\in \mathbb{R}^N$, 并以这一评分向量为标准，认为评分更高的节点更可能是标签传播的源点。进一步地，可以基于给定的数量和阈值选取模型评测的源点。




\section{国内外研究现状}\label{sec:baseline-state}
本节综述了社交网络传播源检测领域的研究进展，介绍了相关研究从基于指定传播模型的源点检测方法到不依赖传播模型、专注于表征节点传播特征的源点检测方法的研究思路进展，以及从基础数学模型到基于图神经网络的深度学习模型的研究方法进展。最后，本节总结了目前为止相关领域研究的一系列不足之处。

\subsection{传播模型}
社交网络传播模型与传染病模型均可归结于描述可传播实体（舆论观点，信息或传染病等）在呈网状结构的传播媒介（如社交媒体，传染者群体）中传播的行为，可统称为传播模型。传播模型定义社交网络中的节点状态至少有2种：未获得传播实体的非感染态和已获得传播实体的感染态。典型的传播模型有描述传染病的SI、SIR模型以及描述影响力传播的IC、LT模型等。本文主要围绕SI（Susceptible-Infected），SIR\cite{si_sir}（Susceptible-Infected-Recovered）和IC（independent Cascade）传播模型开展实验，这些模型的具体定义见附录\ref{apd:propagation_model}。


\subsection{基于指定传播模型的源点检测方法}\label{subsec:prior-model}
社交网络中影响力传播的溯源问题，在初期被认为是影响力传播问题的逆问题，所以这一时期研究方法的思路整体是针对指定传播模型的特性进行建模，表征指定传播模型的传播行为，进而判断社交网络中的传播源\cite{kempe2003maximizing}。


NetSleuth\cite{prakash_spotting_2012}是基于SI传播模型提出的多源点检测方法。这一方法使用编码感染波来描述传播过程，使用最大似然方法优化传播过程，减少描述长度。在源点检测算法层面，其使用子矩阵拉普拉斯方法，结合“豁免”概念（即未感染节点对邻近感染节点的“豁免”作用），通过计算感染图的拉普拉斯子矩阵的特征向量，找到最可能的种子节点。这一工作还通过计算表示种子节点的编码长度和传播过程的编码长度的评分，自动确定最佳的种子节点数量。
针对多源传播的现实场景，Zang等人\cite{zang_locating_2015}采用分治法的策略，提出了一种在SIR模型下定位社交网络中传播源的方法。作者通过社区检测方法将扩展后的感染节点划分为多个社区，每个社区对应一个潜在的传播源头，从而将多源头定位问题转化为多个单源头定位问题，并在单源传播问题上应用反向传播算法，通过最大似然估计和中心性度量预测源点。
在同样基于SIR模型下检测网络中多个信息源的场景，Chen等人\cite{chen_detecting_sir_2016}的工作提出了一种基于样本路径的聚类和定位算法（CL），在树状网络中通过选择距离最远的感染节点对，逐步构建信息源估计器。对于一般网络，作者提出了一种启发式算法，结合了聚类和反向感染算法（CRI），通过在每个聚类中寻找Jordan感染中心来估计信息源。此外，文章还提出了一种估计信息源数量的启发式算法，通过分析不同假设下的最大感染半径来确定信息源的数量。

总体上，为一种传播模型定制的溯源算法无法在多种传播模型乃至现实世界的未知传播模型上获得更好的泛用性，因此基于先验传播模型的源点检测方法具有较大的局限性。

\subsection{基于标签传播的源点检测方法}

基于上述局限性，研究者们开始进一步探索不依赖具体传播模型的源点检测方法。

Zhang等人\cite{wang2006lp_lpsi_prof2}首先提出了标签传播的概念，指出在图数据上的标签传播可以遵循一定的简单线性规则。为了解决前述方法依赖先验传播模型的问题，Wang等人\cite{lpsi_aaai_2017}将标签传播的概念迁移并扩展到了传播源检测这一问题上，提出了基于“源点显著性”（Source Prominence）概念的LPSI（Label Propagation Source Identification）检测算法。他们认为标签在社交网络中进行传播时，传播结果的快照会体现出源点显著性：网络的节点标签数据中，周围节点被感染的数量和比例更多的节点，更有可能是传播源节点。基于这一思想，其提出了LPSI节点评分，在迭代过程中向节点传播邻居信息，进而在k次迭代聚合最远2k-hop内的图拓扑结构下的节点信息，并以一定的接纳比例计算聚合了邻居节点和自身感染情况后的置信评分。

如公式\ref{equ:lpsi_iter1}所示，对于一个指定的传播标签快照和一个指定的节点$i$，LPSI在迭代轮次$t$中维护一个显著性评分$G_i^t$。在一个迭代轮次的计算中，其通过一个比例参数$\alpha$控制从其邻居和自身标签状态获取到的显著性评分。这样的一次迭代就能从其一跳邻居中获取显著性评分参考，进而间接性地通过多次迭代计算得到更远距离邻居的显著性评分参考。
\begin{equation}
    \label{equ:lpsi_iter1}
    G_i^{t+1} = \alpha \sum_{j:j\in \mathcal{N}_i}S_{ij}G_j^t + (1-\alpha) y_{mi}
\end{equation}

其中的矩阵$S\in \mathbb{R}^{N\times N}$ 类似社交网络图的邻接矩阵处理后的正则化拉普拉斯（Normalized Laplacian Matrix）矩阵，由公式\ref{equ:l_norm_origin}所示，这一矩阵可由社交网络图$G=(V,E)$的邻接矩阵$A$和其度对角矩阵$D$（Degree Matrix，对角线对应位置的值是节点的邻居数量）计算得来。
\begin{equation}
    \label{equ:l_norm_origin}
    S = D^{-\frac{1}{2}}AD^{-\frac{1}{2}}
\end{equation}

通过将单个节点的情况扩展到网络中的全部节点，可以得到公式\ref{equ:lpsi_iter_all}的表示。
\begin{equation}
    \label{equ:lpsi_iter_all}
    G^{t+1} = \alpha SG^t + (1-\alpha) y
\end{equation}


这一公式描述了第$t$次迭代下的评分值，当迭代产生的值趋于稳定时，LPSI算法即认为得到了在单个快照上的最优显著性评分$G^\ast$，由于这个递推式被证明可以收敛，因此有如\autoref{equ:lpsi_iter_def}递推实现的LPSI公式。
\begin{equation}
    \label{equ:lpsi_iter_def}
    LPSI_{iter}^\ast(S,y) = G^\ast={lim}_{t\rightarrow\infty}{G^t}
\end{equation}

进一步地，经由Wang\cite{zhou_lpsi_prof1}和Zhang\cite{wang2006lp_lpsi_prof2}对标签传播算法的研究与证明，有如公式\ref{equ:lpsi_prof}所示的以下两个结论：
\begin{equation}
    \label{equ:lpsi_prof}
    \begin{split}
        \lim_{t\rightarrow\infty}(\alpha S)^t &= 0\\[5pt]
        \lim_{t\rightarrow\infty}\sum_{i=0}^{t}(\alpha S)^t&=(I-\alpha S)^{-1}
    \end{split}
\end{equation}

将式\ref{equ:lpsi_prof}代入式\ref{equ:lpsi_iter_all}，即可得到LPSI评分$G^\ast$的直接推导式：
\begin{equation}
    \label{equ:lpsi_conclude}
    LPSI_{d}(S, y)=G^\ast = (1-\alpha) (I-\alpha S)^{-1}y
\end{equation}

基于上式，可以在计算并缓存矩阵$(I-\alpha S)^{-1}$之后，通过一次矩阵乘法快速得到社交网络图下一个节点标签快照对应的节点LPSI评分。LPSI这一工作首先提出了不依赖传播模型的源点检测任务研究，后续介绍的相关工作也均以此为前提展开。

\subsection{基于深度学习模型的源点检测方法}

图神经网络\cite{kipf_gcn_2017}（Graph Neural Network, GNN）及其变体\cite{velickovic_gat_2018}\cite{hamilton2017inductive}能够处理社交网络中的异构节点和复杂的关系类型，有效提取并应用图数据中的结构信息，是被大量研究印证适用于处理社交网络等图数据场景任务的基础模型，这一基础模型也被广泛应用于多传播源检测问题的研究中。


GCNSI\cite{gcnsi_2019}和SIGN\cite{li_2019sign_2021}提出以LPSI算法为后备框架扩展输入特征，将多传播源检测问题转化为图机器学习领域下的二分类问题。同时，GCNSI首次提出了通过对单个标签传播过程的多次重复观察得到节点标签序列，扩展了源点检测问题的输入语境；此外，其创新性地通过分离计算标签传播过程中的正负标签值构建扩展化的输入特征，这一做法有效提高了模型效果，并为后续相关工作提供了行之有效的输入特征构建方法。
在上述工作的基础上，TGCNSI\cite{fan_temp_gcnsi_2020}引入时序信息和动态图的处理模式，将动态网络按时间序列分层，转化为多层静态网络，然后从最后一层网络开始，逆向进行标签传播，最终聚合可学习的节点特征投影作为模型输入，构建动态图场景下多快照序列的传播源检测算法。
MGCNSI\cite{yang_mgcnsi_2023}则进一步深入探讨了表征图数据中的局部子结构（即Motif\cite{milo_motif_2002}）对于探测传播源的重要性，并提出基于子结构感知的图神经网络模型。其构建了若干组基于随机初始化Motif的网络，为每个Motif提取特定类型的关键邻居，同时通过注意力机制，为信息量更大的节点动态分配权重，最终将Motif感知的节点特征输入图卷积神经网络GCN中，构建整个模型架构。
IGVD\cite{wang_ivgd_2022}首先从理论层面上分析了传播源检测这一信息传播逆问题的不适定性（ill-posed），并基于这一特性提出了能够自动学习图扩散模型的通用框架。该工作将图扩散模型分解为特征构建和标签传播两个阶段，通过残差连接和固定点迭代来实现逆过程，采用误差补偿模块来估计并补偿误差；
进一步地，该工作提出并构建了有效性感知层，能够自动学习并编码复杂的拓扑约束，确保推断出的源节点满足实际应用中的有效性要求，并通过线性化技术将非凸优化问题转化为凸问题，显著提高了计算效率，也使其在大规模图数据中有相对较好的表现结果。
SL\_VAE\cite{ling_sl_vae_2022}首次提出了一个基于深度生成模型的概率化框架，通过变分自编码器（Variantional AutoEncoder，VAE\cite{kingma_vae}）来量化源定位中的不确定性，生成扩散源的概率分布，并通过采样进行源点检测。
这一工作联合训练前向扩散模型和生成模型，使得其能够在任意扩散模式下进行源定位。这种结合使得模型能够适应不同的扩散模式，而不局限于特定的扩散过程。在VAE模型的可学习参数模块中，这一工作也使用了图神经网络模块作为图节点特征信息编码器和解码器的组成参数。
此外，TGASI\cite{hou_tgasisequential_2023}认为可以将源点检测问题视作序列预测问题，提出了一个基于序列到序列的源定位框架，能够有效地在各个传播模型对应的源点检测场景进行迁移。
该工作在输入处理层面嵌入了动态感染特征和静态拓扑特征，丰富了低维嵌入的表示；
其以基于图神经网络的编码器和基于双向GRU（Gated Recurrent Unit）\cite{cho_gru_2014}的解码器作为模型的核心组件，并引入了时间戳感知的注意力机制；
这一工作还设计了包含交叉熵损失、均方误差损失和图约束损失的复合损失函数，以更好地适应源点检测任务。





\subsection{现有方法存在的问题}
综上所述，社交网络中的传播源检测任务在方法效果以及各方向上的研究都取得了长足进展。但上述所被调研的方法仍存在以下的若干问题：

\begin{itemize}
    \item 现有的不依赖传播模型的检测算法在小规模社交网络中能够取得较好的检测精度，但当网络规模扩大时，其模型表现的各项指标都有显著下降。这一问题本质是随着社交网络规模和复杂增大，现有的各类源点检测模型不能有效、准确地捕捉网络节点的邻居关系和社群关系，其神经网络参数组的表征能力会随着图数据的规模增大而受到较大的影响；
    \item 现有的大多数基于深度学习的模型主要依赖于监督学习，当面对仅有部分初始序列可用的自监督学习场景时，这些模型的表现较差。这一问题本质是现有的基于深度学习模型未能有效利用标签传播快照序列的时序信息，且依赖先验结果导向的监督学习训练模式；
    \item 随着社交网络规模的增长，基于机器学习模型的源点检测方法面临着非线性增长的训练时间成本和硬件存储空间成本，而目前为止，较少有工作对源点检测模型的训练和推理流程进行时间和存储上的工程优化。
\end{itemize}



\section{基础深度学习模型}
本文提出的模型框架由一系列基础深度学习模型组建而成，本节将介绍关键基础模型的整体模型架构和设计思路，并简要论述本文采用这些基础模型的动机。
\subsection{图神经网络模型}\label{subsec:gcn-intro}
图神经网络及其变体被广泛应用于图数据结构下的机器学习任务，也有大量多源点检测工作以图神经网络作为基础框架构建预测模型，本节将概述本研究使用的常见图神经网络模型。
\subsubsection{图卷积神经网络GCN}
图卷积神经网络GCN\cite{kipf_gcn_2017}（Graph Convolutional Network）是较早被提出，用于半监督图机器学习任务的图神经网络基础模型。GCN层的做法则是对于图中的单个节点，以图拉普拉斯算子作为“卷积核”，聚合其自身和所有邻居节点的进阶特征，并通过类似的线性变换与激活函数表征阈值激活特性，通过多个GCN层的堆叠来使得节点能够感知到多跳外的邻居节点特征信息。

基于原始的图邻接矩阵$A$，GCN通过实验确定了表征节点聚合邻居的采纳比例的矩阵$\hat{A} = \tilde{D}^{-\frac{1}{2}}\tilde{A}\tilde{D}^{-\frac{1}{2}}$。其中$\tilde{A} = A+I$是增强了自循环的邻接矩阵，而$\tilde{D}$则是$\tilde{A}$的度对角矩阵。进一步地，单个GCN层通过一个全连接层（用连接参数矩阵$W$表示）和激活函数$\sigma$（通常是ReLU）来得到一个如公式\ref{equ:gcn_layer}所示的模型层的表征。
\begin{equation}
    \label{equ:gcn_layer}
    Z^{(i)} = ReLU(\tilde{D}^{-\frac{1}{2}}\tilde{A}\tilde{D}^{-\frac{1}{2}}Z^{(i-1)}W^{(i)})
\end{equation}

堆叠多个上述GCN层，就能够得到深度节点嵌入表示，可以将GCN模块的输出作为节点的高阶特征输入，传递给适用于各项特化任务的模型供给进行计算和输出。

\subsubsection{图注意力网络GAT和GATv2}

如图\ref{fig:gat}所示，图注意力网络\cite{velickovic_gat_2018}（Graph Attention Network， GAT）是一种基于注意力机制的图神经网络模型，旨在动态地学习节点间的邻接权重以提高图嵌入的表达能力。GAT通过引入自注意力机制（Self-attention）为每个节点的邻居分配不同的、可学习的重要性权重，从而克服了GCN在邻域特征聚合时对邻居节点一视同仁的局限性。同时GAT在其网络结构设计中引入了多头注意力（Multi-head Attention）机制，以独立的多个参数矩阵增加自注意力机制的鲁棒性和稳定性，并通过多个表达路径避免信息瓶颈，提升模型可泛化能力和可解释性。

\begin{figure}[htbp]
    \centering
    \includegraphics[width=\textwidth]{lzy/gat}
    \caption{\label{fig:gat}图注意力网络GAT示意图}
\end{figure}
具体实现上，GAT层首先对输入特征$h_i$进行升维或降维变换，得到变换后的层内特征向量$\mathbf{W}h_i$，其中$\mathbf{W}$是可学习的参数矩阵。此后其通过一层线性变化与LeakyReLU激活函数的组合构建自注意力算子，计算如公式\ref{equ:gat_eij}所示的两两输入特征之间的注意度$e_{ij}$，其中$\mathbf{a}^T$是一个可以学习的线性变换向量，$\Vert$代表向量的连接（Concatenation）操作。之后其进一步通过一个softmax算子得到如公式\ref{equ:gat_alphaij}所示的两两输入特征之间的相关系数$\alpha_{ij}$。

\begin{equation}
    \label{equ:gat_eij}
    e_{ij} = LeakyReLU(\mathbf{a}^T[\mathbf{W}h_i\Vert\mathbf{W}h_j])
\end{equation}
\begin{equation}
    \label{equ:gat_alphaij}
    \alpha_{ij} = softmax_j(e_{ij})=\frac{exp(e_{ij})}{\sum_{k \in \mathcal{N}_i}exp(e_{ik})}
\end{equation}

计算得到的相关系数$\alpha_{ij}$就是GAT层为每个特征计算的可学习的重要性权重。用这个相关系数加权聚合邻居节点的层内特征向量并输入激活函数$\sigma$ 即可得到如公式\ref{equ:gat_output}所示的GAT层对指定维度特征的输出。
\begin{equation}
    \label{equ:gat_output}
    h^{(l+1)}_i = \sigma(\sum_{j \in \mathcal{N}_i}\alpha_{ij}\mathbf{W}^{(l+1)}h^{(l)}_j)
\end{equation}

进一步地，该工作引入了多头机制，独立地进行$K$次上述的注意力计算并取平均值，即可得到如公式\ref{equ:gat_multihead}所示的多头注意力下的GAT层输出。
\begin{equation}
    \label{equ:gat_multihead}
     h^{(l+1)}_i 
    =  \sigma(\frac{1}{K}\sum_{k=1}^K\sum_{j \in \mathcal{N}_i}\alpha^k_{ij}\mathbf{W}^{(l+1)}_k h^{(l)}_j 
    )
\end{equation}

在图注意力网络GAT基础上，Brody等人\cite{brody_gatv2how_2022}的工作分析了GAT的优越性和局限性，通过一系列对比实验体现出了GAT表征节点自注意力计算的局限性，并提出了GATv2模型。GATv2模型在设计上是对GAT模型的微调改进，具体体现在其将公式\ref{equ:gat_eij}所示的注意力评分的计算方式改编为如公式\ref{equ:gatv2_eij}所示的计算方式。
\begin{equation}
    \label{equ:gatv2_eij}
    e^{v2}_{ij} = \mathbf{a}^T LeakyReLU(\mathbf{W}^{dyn}[h_i\Vert h_j])
\end{equation}

通过这一改进，GATv2使得注意力权重不仅取决于节点特征，还可以来源于对不同节点间的特征交互的动态学习，这使得该模型可以捕捉更复杂的关系模式，更好地表征节点间的依赖性和交互关系。

\subsubsection{图采样聚合网络GraphSAGE}

GraphSAGE\cite{hamilton2017inductive}（Graph Sample and AGgregatE）是一种面向大规模图机器学习任务的图神经网络框架，其核心创新点在于通过采样与聚合（SAGE）算子有效生成节点表示，其实现方式兼顾了机器学习模型的计算效率和灵活性，使其能够在一个模型层中处理大规模图结构，而不需完全遍历图中所有节点。

单个GraphSAGE层的具体实现可以总结为节点邻居采样、特征聚合和节点表示更新三个步骤。首先，对于对于每个节点$v$，GraphSAGE从其邻居节点中随机选择$K$个邻居作为采样邻居，记为$\mathcal{N}_K(v)$。
进一步地，其通过选定特征聚合函数$f_{aggr}$来聚合上一步采样得到的邻居节点特征，设节点$v$的特征为$h^{(l)}_v$，则能够得到如公式\ref{equ:sage_aggr_feat}所示的节点邻居聚合特征表示。
\begin{equation}
    \label{equ:sage_aggr_feat}
     h^{(l)}_{\mathcal{N}_K(v)} =   f_{aggr}({h^{(l)}_u:u\in \mathcal{N}_K(v)})
\end{equation}

进一步地，GraphSAGE层将经过采样聚合后的邻居特征与上一层输入的节点自身特征进行拼接，全连接层线性变换和激活函数处理，就得到了如公式\ref{equ:sage_output}所示的这一神经网络层的节点表示输出。其中$W^{(l)}$是这一层中可学习的参数矩阵。
\begin{equation}
    \label{equ:sage_output}
     h^{(l+1)}_{v} =   \sigma(W^{(l)}\cdot h^{(l)}_v\Vert h^{(l)}_{\mathcal{N}_K(v)})
\end{equation}

\subsection{MLP-Mixer模型}
MLP-Mixer\cite{tolstikhin_mlp-mixer_2021}（Multi Layer Perceptron-Mixer）是一种为图像分类等计算机视觉研究防线的任务设计的深度学习模型，其核心思想就是使用简单的多层感知机MLP直接处理输入数据，并通过批次（Patch）维度和通道（Channel）维度两个方向通过MLP的线性变换实现两个方向的自注意力能力。本文参考了MLP-Mixer通过转置特征矩阵来构建多维度自注意力机制的关键思路，在时序数据处理和子图权重感知等处理流程应用了类似MLP-Mixer架构的模型结构设计。

\begin{figure}[htbp]
    \centering
    \includegraphics[width=\textwidth]{lzy/mixer.pdf}
    \caption{\label{fig:mixer}MLP-Mixer模型示意图}
\end{figure}
如图\ref{fig:mixer}所示，经过处理的输入被分为Patch和Channel两个维度，MLP-Mixer首先通过矩阵转置和一个MLP对一个Patch中的所有通道进行自注意构建，再转置回原形状，使用LayerNorm正则化每个Patch的特征后，再对一个通道内的每个Patch进行自注意力操作，最后将这一自注意力计算的结果通过一层残差连接作为MLP-Mixer层的输出。可以看出，MLP-Mixer的核心思想就是通过矩阵转置进行两个维度的线性变换处理，从而提供范围更大的感知域，因此如果可以“Patch”和“Channel”这两个概念，就可以将其迁移到其他多维度机器学习任务上。




\subsection{基于Transformer的序列到序列模型}\label{sec:transformer}

由Vaswani等人\cite{vaswani_transformer_2017}设计实现的Transformer是深度学习和大语言模型领域极负盛名的用于处理序列到序列（Sequence-to-Sequence）任务的基础深度学习模型。它在自然语言处理领域取得了巨大成功，被广泛用于机器翻译、文本生成、问答系统等任务。
越来越多的领域开始以Transformer为基础核心模型构建其领域内的深度学习模型，
如计算机视觉领域的ViT\cite{alexey2020vit}，DETR\cite{detr}以及图深度学习领域的HGT\cite{hgt}等模型。

 \begin{figure}[htbp]
    \centering
    \includegraphics[width=.5\textwidth]{lzy/transformer.png}
    \caption{\label{fig:transformer}Transformer模型示意图}
\end{figure}
如图\ref{fig:transformer}所示，典型的Transformer模型由编码器和解码器两部分构成。编码器将处理处在词汇表（Vocabulary）$\mathcal{V}$中的字符输入数据，将输入序列转换为对应解码器的高维度的隐藏特征表示，而解码器则通过输入数据的位置关系以及整个输入序列自注意力机制输出基于输入序列基础上的下一个token，通过编码器和解码器的协作，Transformer构建了序列生成模型的基础工作模式，在不同的任务语境中，只要输入层提供代表对应任务的“词汇表”和“词汇”，Transformer模型就能够对应地提供序列预测、序列生成、特征分类等能力。

Transformer的关键特性之一就是其能够高效地表征和理解输入token的位置与顺序关系。
如公式\ref{equ:positional_encoding}所示，Transformer使用位置编码（Positional Encoding，PE）进行表征token的相对和绝对位置关系，通过引入三角函数，位置编码函数能够较好地表征token的绝对位置与相对位置信息，并体现出数据维度层面的关联与差异性。

\begin{equation}
    \label{equ:positional_encoding}
    \begin{split}
        PE(pos,2i) &= \sin(pos/10000^{2i/d_{model}}) \\[5pt]
        PE(pos,2i+1) &= \cos(pos/10000^{2i/d_{model}}) 
    \end{split}
\end{equation}


Transformer的自注意力机制允许模型在处理输入的不定长序列数据时，对不同位置的token信息进行动态加权关注，从而在与传统的固定权重的注意力机制对比时具有更高的灵活性。
考虑长度为$N$的输入向量序列$X={x_1,x_2,\dots ,x_N}$，其下标代表对应输入向量在输入序列中的位置，自注意力算子$f_{Attention}$的核心功能是计算每个输入向量相对于其他所有向量的“注意力分数”。自注意力算子有三个输入：1）用于计算一个输入向量向其他向量计算注意力分数的查询请求的查询向量$Q\in \mathbb{R}^{N\times d_k}$，2）用于代表一个向量接收其他输入向量查询请求并产生注意力分数的键向量$K\in \mathbb{R}^{N\times d_k}$和3）用于表征输入向量本身自注意力分数的值向量$V\in \mathbb{R}^{N\times d_v}$。基于这三个输入向量，自注意力算子做如公式\ref{equ:transformer_attention}所示的自注意力计算得到整个输入向量的注意力分数。其中$d_k$为键向量$K$的维度。

\begin{figure}[htbp]
    \centering
    \includegraphics[width=.7\textwidth]{lzy/transformer_mha.png}
    \caption{\label{fig:transformer_mha}Transformer的自注意力与多头注意力机制示意图}
\end{figure}

\begin{equation}
    \label{equ:transformer_attention}
    f_{Attention}(Q,K,V) = softmax(\frac{QK^T}{\sqrt{d_k}})V
\end{equation}

基于自注意力算子，Transformer构建了多头注意力机制来集成位置编码与输入向量。首先，它通过简单相加计算得到扩展的模型层输入，对于输入长度为$N$，嵌入向量维度为D的输入向量集合$X\in \mathbb{R}^{N\times D}$，就能得到如公式\ref{equ:transformer_pos_input}所示的位置感知输入：
\begin{equation}
    \label{equ:transformer_pos_input}
    \tilde{X}_{(pos,i)} = X_{(pos,i)}+PE(pos,i)
\end{equation}

基于上述位置感知输入，设置数量为$H$的多头计算路径，对于第$h$个独立的自注意力计算路径，可以通过设置三个可学习的、与上述自注意力算子的三个输入对应的投影矩阵$W_h^Q\in \mathbb{R}^{d_{model}\times d_k}$、$W_h^K\in \mathbb{R}^{d_{model}\times d_k}$和$W_h^V\in \mathbb{R}^{d_{model}\times d_v}$，通过线性变换得到如自注意力算子的输入，进而算得当前Transformer层的自注意力分数矩阵$O_h\in \mathbb{R}^{N\times d_v}$。
\begin{equation}
    \label{equ:transformer_qkv_input}
    O_h = f_{Attention}(\tilde{X}W_h^Q, \tilde{X}W_h^K,\tilde{X}W_h^V)
\end{equation}

得到每一头的自注意力分数后，Transformer执行多头的拼接操作，并用一个可学习的投影矩阵$W^O\in \mathbb{R}^{Hd_v\times d_{model}}$将多头自注意力层得到的输出向量的维度重整为下一层Transformer的输入维度。至此就定义得到了\autoref{fig:transformer_mha}中体现的多头注意力层的数据计算流程。
\begin{equation}
    \label{equ:transformer_mha}
    f_{MHA} = Concat(\{O_1,O_2,\dots , O_H\}) W^O
\end{equation}

后续基于位置掩码（Positional Mask）的输入控制策略和对Decoder-Only与Encoder-Only模型的实际应用架构和取舍选择，将在本文模型设计章节深入讨论。



\section{本章小结}
本章对未知传播模型的社交网络多传播源点检测任务的问题背景和与之高度相关的机器学习基础框架和模型作了简要介绍。主要介绍了本文所研究的用于模拟社交网络信息传播的若干种传播模型，并进一步介绍了在图机器学习领域和离散时间序列预测领域有重要研究意义和实用意义的机器学习基础模型的设计动机和整体框架。


